// pages/dindan/dindan.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    orderList: [],
    tabs: ['全部', '待付款', '待发货', '待收货', '已完成'],
    currentTab: 0
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    // 检查是否有立即购买的商品
    const buyNowProduct = wx.getStorageSync('buyNowProduct');
    if (buyNowProduct) {
      // 生成订单数据
      const newOrder = {
        orderId: 'DD' + new Date().getTime(),
        status: '待付款',
        total: buyNowProduct.price * buyNowProduct.count,
        createTime: this.formatDate(new Date()),
        goods: [{
          id: buyNowProduct.id,
          name: buyNowProduct.name,
          spec: buyNowProduct.spec || '默认规格',
          price: buyNowProduct.price,
          count: buyNowProduct.count,
          image: buyNowProduct.image
        }]
      };
      
      // 更新订单列表
      this.setData({
        orderList: [newOrder, ...this.data.orderList]
      });
      
      // 清除本地存储的立即购买商品数据
      wx.removeStorageSync('buyNowProduct');
    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {
    // 模拟刷新
    setTimeout(() => {
      wx.stopPullDownRefresh()
    }, 1000)
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  },

  // 切换订单状态标签
  switchTab(e) {
    const index = e.currentTarget.dataset.index
    this.setData({
      currentTab: index
    })
    this.filterOrders()
  },

  // 根据当前标签筛选订单
  filterOrders() {
    // 这里可以根据currentTab筛选不同状态的订单
    // 目前只是模拟数据，实际项目中应该从服务器获取
  },

  // 支付订单
  handlePay(e) {
    const orderId = e.currentTarget.dataset.id
    wx.showLoading({
      title: '正在支付...',
    })
    
    // 模拟支付过程
    setTimeout(() => {
      wx.hideLoading()
      // 更新订单状态
      const orderList = this.data.orderList.map(order => {
        if (order.orderId === orderId) {
          return { ...order, status: '待发货' }
        }
        return order
      })
      
      this.setData({ orderList })
      
      wx.showToast({
        title: '支付成功',
        icon: 'success'
      })
    }, 1500)
  },

  // 删除订单
  handleDelete(e) {
    const orderId = e.currentTarget.dataset.id
    wx.showModal({
      title: '提示',
      content: '确定要删除该订单吗？',
      success: (res) => {
        if (res.confirm) {
          // 从列表中移除订单
          const orderList = this.data.orderList.filter(order => order.orderId !== orderId)
          this.setData({ orderList })
          
          wx.showToast({
            title: '删除成功',
            icon: 'success'
          })
        }
      }
    })
  },

  // 查看订单详情
  viewOrderDetail(e) {
    const orderId = e.currentTarget.dataset.id
    wx.navigateTo({
      url: `/pages/order-detail/order-detail?id=${orderId}`
    })
  },

  // 格式化日期
  formatDate(date) {
    const year = date.getFullYear()
    const month = (date.getMonth() + 1).toString().padStart(2, '0')
    const day = date.getDate().toString().padStart(2, '0')
    const hour = date.getHours().toString().padStart(2, '0')
    const minute = date.getMinutes().toString().padStart(2, '0')
    return `${year}-${month}-${day} ${hour}:${minute}`
  }
})